﻿using Microsoft.EntityFrameworkCore.Metadata.Internal;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Xml.Linq;

namespace MYData.Entity.DomainModels.ApiEntity.Dto
{
    public class sys_dictionarylist_declare_appedixDto
    {



        /// <summary>
        ///通知名称
        /// </summary>
        [Display(Name = "通知名称")]
        [MaxLength(200)]
        [Column(TypeName = "nvarchar(200)")]
        [Editable(true)]
        [Required(AllowEmptyStrings = false)]
        public string informName { get; set; }


        /// <summary>
        ///通知类型
        /// </summary>
        [Display(Name = "字典外键ID")]
        [MaxLength(64)]
        [Column(TypeName = "nvarchar(64)")]
        [Editable(true)]
        public string? DicList_ID { get; set; }

        [Display(Name = "项目类型ID")]
        [MaxLength(64)]
        [Column(TypeName = "nvarchar(64)")]
        [Editable(true)]
        [Required(AllowEmptyStrings = false)]
        public string projecttdiclistId { get; set; }


        [Display(Name = "项目级别ID")]
        [MaxLength(64)]
        [Column(TypeName = "nvarchar(64)")]
        [Editable(true)]
        [Required(AllowEmptyStrings = false)]
        public string projectrankdiclistId { get; set; }

        [Display(Name = "项目来源单位ID")]
        [MaxLength(64)]
        [Column(TypeName = "nvarchar(64)")]
        [Editable(true)]
        [Required(AllowEmptyStrings = false)]
        public string projectsourcerunkId { get; set; }


        [Display(Name = "项目类别ID")]
        [MaxLength(64)]
        [Column(TypeName = "nvarchar(64)")]
        [Editable(true)]
        [Required(AllowEmptyStrings = false)]
        public string projectclassDiclassID { get; set; }




        /// <summary>
        ///申报起始时间
        /// </summary>
        [Display(Name = "申报起始时间")]
        [Column(TypeName = "datetime")]
        [Editable(true)]
        [Required(AllowEmptyStrings = false)]
        public DateTime startDate { get; set; }

        /// <summary>
        ///申报截止时间
        /// </summary>
        [Display(Name = "申报截止时间")]
        [Column(TypeName = "datetime")]
        [Editable(true)]
        [Required(AllowEmptyStrings = false)]
        public DateTime endDate { get; set; }



        /// <summary>
        ///申请通报说明
        /// </summary>
        [Display(Name = "申请通报说明")]
        [MaxLength(2000)]
        [Column(TypeName = "nvarchar(2000)")]
        [Editable(true)]
        public string informContent { get; set; }


        /// <summary>
        ///接收者类型ID
        /// </summary>
        [Display(Name = "接收者类型ID")]
        [MaxLength(64)]
        [Column(TypeName = "nvarchar(64)")]
        [Editable(true)]
        [Required(AllowEmptyStrings = false)]
        public string? receType_Id { get; set; }

        /// <summary>
        ///创建人
        /// </summary>
        [Display(Name = "创建人")]
        [MaxLength(20)]
        [Column(TypeName = "nvarchar(20)")]
        [Editable(true)]
        public string? creator { get; set; }
        /// <summary>
        /// 附件结合Dto
        /// </summary>
        public List<tb_project_appedixDto> file { get; set; }

        /// <summary>
        /// 接收者类型Dto
        /// </summary>
        public tb_project_recevertype_declareMessageInputDto receivetype { get; set; }
    }


    public class tb_project_appedixDto
    {




        /// <summary>
        ///申报附件表名称
        /// </summary>
        [Display(Name = "申报附件表名称")]
        [MaxLength(255)]
        [Column(TypeName = "nvarchar(255)")]
        [Editable(true)]
        [Required(AllowEmptyStrings = false)]
        public string appendixName { get; set; }

        /// <summary>
        ///申报基础信息表外键
        /// </summary>
        [Display(Name = "申报基础信息表外键")]
        [MaxLength(64)]
        [Column(TypeName = "nvarchar(64)")]
        [Editable(true)]
        [Required(AllowEmptyStrings = false)]
        public string? declaremessageId { get; set; }

        /// <summary>
        ///附件路径
        /// </summary>
        [Display(Name = "附件路径")]
        [Column(TypeName = "nvarchar(max)")]
        [Editable(true)]
        [Required(AllowEmptyStrings = false)]
        public string appendixUrl { get; set; }




    }

}
